package org.balthie.demo.jdk.util.concurrent.auxiliary;

//大多数同步器都是基于AQS来构建的。AQS框架提供了一套通用的机制来管理同步状态（synchronization state）、阻塞/唤醒线程、管理等待队列。

//它的所有操作都围绕着资源——同步状态（synchronization state）来展开，并替用户解决了如下问题：
//资源是可以被同时访问？还是在同一时间只能被一个线程访问？（共享/独占功能）
//访问资源的线程如何进行并发管理？（等待队列）
//如果线程等不及资源了，如何从等待队列退出？（超时/中断）
//这其实是一种典型的模板方法设计模式：父类（AQS框架）定义好骨架和内部操作细节，具体规则由子类去实现。

//AQS框架将剩下的一个问题留给用户：
//什么是资源？如何定义资源是否可以被访问？

//https://segmentfault.com/a/1190000015562787
public class AbstractQueuedSynchronizerDemo {
//	AbstractQueuedSynchronizer

}
